package com.administrator.scoreManageSys.service;

import com.alibaba.fastjson.JSONObject;

/**
 * @author zsh
 * @date 2022/04/01/ 10:12
 */
public interface StudentService {


    /**
     * 获取学生信息列表
     *
     * @param pageNum 当前页
     * @param pageSize 页大小
     * @param classId 查询学生班级
     * @param name 学生姓名
     * @return  学生信息列表
     */
    JSONObject list(Integer pageNum, Integer pageSize, Long classId, String name);

    /**
     * 重设密码
     * @param id 重设密码用户
     * @return 操作结果
     */
    JSONObject resetPassword(Long id);

    /**
     * 修改学生信息
     * @param name 用户姓名
     * @param phone 用户手机号
     * @param roleId 用户角色id
     * @param address 现居住地址
     * @param id 用户id
     * @param identity 用户身份  0:管理员 / 1:学生 /2:老师
     * @param sex 性别 1/2 男/女
     * @param identityCard 用户身份证号
     * @param idEntityCardAddress 用户身份证地址
     * @param admissionTime 入学时间
     * @return 操作结果
     */
    JSONObject userStudentUpdate(String name, Long phone, Long roleId, String address, Long id, Long identity, Long sex, String identityCard, String idEntityCardAddress, Long admissionTime);

    /**
     * 查询自己的成绩
     * @param userId 学生id
     * @param season 查询考季
     * @param subject 查询科目
     * @param pageSize 页大小
     * @param pageNum 当前页
     * @return 成绩列表
     */
    JSONObject getMyExamList(Long userId, Long season, Long subject, Integer pageSize, Integer pageNum);

    /**
     * 获取学生详情
     * @param id 学生id
     * @return 详情
     */
    JSONObject getUserDetail(Long id);
}
